#ifndef _RS7020_H
#define _RS7020_H

#include "../common/common_motor.h"
#include "../common/common_modbus.h"

/* 定义雷赛rs7020驱动器驱动电机的相关参数 */
struct rs7020_motor_attr
{
    motor_direction_t dir; // 电机转动方向 1 反向 0 正向
    unsigned short rpm;    // 转速
    unsigned int acc;      // 加速度
    unsigned int dec;      // 减速度
    unsigned char running;   // 运行状态， 0 表示停止   1 表示运行
};

/**
 * @brief       RS7020电机的构造函数，该函数会将 RS7020 对应的modbus 设备描述以及驱动函数绑定到一起
 * @param       motor:  标准的电机对象，rs7020的驱动程序已适配motor的标准的电机驱动接口函数
 *              dev:    已初始化的 modbus 设备描述
 *              name:   给于电机一个唯一的名字
 * @return      返回 0 为构造成功，返回 -1 为构造失败
 */
extern int xp_rs7020_constructor(struct xp_motor *motor, struct xp_modbus_device *dev, unsigned char *name);

/* 用于测试调试RS7020电机 */
extern int xp_rs7020_debug(char *type, char *fun, char *param);

#endif
